package main;

import hibernateDao.HibernateDao;

import java.rmi.UnmarshalException;
import java.sql.Date;
import java.util.HashSet;
import java.util.Set;

import entity.CajaAhorro;
import entity.Celular;
import entity.Comercial;
import entity.Cuenta;
import entity.Deposito;
import entity.Extraccion;
import entity.Particular;
import entity.Telefono;
import entity.TelefonoID;
import entity.Transaccion;
import entity.Usuario;

public class Main {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		
		
		
		
		Set<Cuenta> cuentas = new HashSet<Cuenta>();
				
		Set<Telefono> telefonos = new HashSet<Telefono>();
		
		telefonos.add(new Celular(new TelefonoID("BsAs","15-5555-5555")));
		telefonos.add(new Particular(new TelefonoID("Rosario","5555-5555")));
		telefonos.add(new Comercial(new TelefonoID("Chasco","15-5555-5555"),505));
		
		Usuario usuario = new Usuario("001",cuentas,"12345678","Robocop","Terminator",telefonos);
		
		
		Set<Transaccion> transaccionesCA = new HashSet<Transaccion>();
		
		transaccionesCA.add(new Deposito(001,250,new Date(0)));
		transaccionesCA.add(new Extraccion(002,100,new Date(0)));
		
		Set<Transaccion> transaccionesCC = new HashSet<Transaccion>();
		
		transaccionesCC.add(new Deposito(003,450,new Date(0)));
		transaccionesCC.add(new Extraccion(004,300,new Date(0)));
		
		
		cuentas.add(new CajaAhorro(11,100,usuario,transaccionesCA));
		cuentas.add(new CajaAhorro(12,100,usuario,transaccionesCC));
		
		
		try {

			HibernateDao.getInstancia().agregarEntity(usuario);
		} catch (UnmarshalException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

	}

}
